package br.ufrn.sipac.patrimonio.coletor.activity;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import br.ufrn.sipac.patrimonio.coletor.R;
import br.ufrn.sipac.patrimonio.coletor.controller.LevantamentoController;
import br.ufrn.sipac.patrimonio.coletor.controller.MainController;

public class VisualizarActivity extends Activity {
	private TextView unidade;
	private TextView localidade;
	private TextView tipo;
	private TextView descricao;
	private Button voltar;
	private Button detalhesLevantamento;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_visualizar);

		// Mapear os componente da tela
		unidade = (TextView) findViewById(R.id.textView5);
		localidade = (TextView) findViewById(R.id.textView6);
		tipo = (TextView) findViewById(R.id.textView7);
		descricao = (TextView) findViewById(R.id.editText2);
		voltar = (Button) findViewById(R.id.button2);
		detalhesLevantamento = (Button) findViewById(R.id.button1);

		// Inicializa os componentes
		unidade.setText(LevantamentoController.getInstance().getLevantamento().getLocal().getUnidade().toString());
		localidade.setText(LevantamentoController.getInstance().getLevantamento().getLocal().toString());
		tipo.setText(LevantamentoController.getInstance().getLevantamento().getTipo().toString());
		descricao.setText(LevantamentoController.getInstance().getLevantamento().getDescricao());

		// Adiciona listeners
		voltar.setOnClickListener(new VoltarMenuListener());
		detalhesLevantamento
				.setOnClickListener(new VerDetalhesColetaListener());
	}

	/**
	 * Carrega menu da aplicação.
	 */
	private void iniciaMenu() {
		finish();
		Intent intent = new Intent(this, MenuActivity.class);
		startActivity(intent);
	}

	@Override
	public boolean onOptionsItemSelected(MenuItem item) {
		switch (item.getItemId()) {
		case R.id.item2:
			iniciaMenu();
		case R.id.item1:
			finish();
		}
		return false;
	}

	@Override
	public void onBackPressed() {
		finish();
		Intent intent = new Intent(this, MenuActivity.class);
		startActivity(intent);
	}

	/**
	 * Encaminha para a tela de detalhamento dos itens do levantamento.
	 */
	public void visualizarDetalhesColeta() {
		finish();
		Intent intent = new Intent(this, DetalhesColetaActivity.class);
		startActivity(intent);
	}

	/**
	 * Encaminha para a listagem de levantamentos cadastrados.
	 */
	public void voltarListaLevantamento() {
		finish();
		Intent intent = new Intent(this, ListaLevantamentoActivity.class);
		startActivity(intent);
	}

	/**
	 * Listener que lida com o encaminhamento para a tela do menu principal.
	 */
	public class VoltarMenuListener implements Button.OnClickListener {
		@Override
		public void onClick(View arg0) {
			voltarListaLevantamento();
		}
	}

	/**
	 * Listener que permite visualizar os detalhes da coleta.
	 */
	public class VerDetalhesColetaListener implements Button.OnClickListener {
		@Override
		public void onClick(View arg0) {
			visualizarDetalhesColeta();
		}
	}
}
